package com.dlc.shop.bean.enums;

/**
 * 店铺钱包金额类型
 * 金额类型 0 未结算金额 1可提现金额  2冻结金额
 */
/**
 * @author Yami
 */
public enum ShopWalletAmountType {

    /**
     * 未结算金额
     */
    UNSETTLED_AMOUNT(0,"未结算金额","Unsettled amount", "yami.shop.wallet.amount.type.unsettledAmount"),

    /**
     * 可提现金额
     */
    SETTLED_AMOUNT(1, "可用店铺余额","Settle amount", "yami.shop.wallet.amount.type.settledAmount"),

    /**
     * 冻结金额
     */
    FREEZE_AMOUNT(2, "冻结金额","Freeze amount", "yami.shop.wallet.amount.type.freezeAmount"),

    /**
     * 总结算金额
     */
    TOTAL_SETTLED_AMOUNT(3, "总结算金额","Total settle amount", "yami.shop.wallet.amount.type.totalSettledAmount"),

    ;

    private final Integer num;

    private final String shopWalletAmountType;

    private final String shopWalletAmountTypeEn;

    private final String i18nTag;

    public Integer value() {
        return num;
    }

    public String getI18nTag() {
        return i18nTag;
    }

    public String getShopWalletAmountType() {
        return shopWalletAmountType;
    }

    public String getShopWalletAmountTypeEn() {
        return shopWalletAmountTypeEn;
    }

    ShopWalletAmountType(Integer num,String shopWalletAmountType,String shopWalletAmountTypeEn, String i18nTag){
        this.num = num;
        this.shopWalletAmountType = shopWalletAmountType;
        this.shopWalletAmountTypeEn = shopWalletAmountTypeEn;
        this.i18nTag = i18nTag;
    }

    public static ShopWalletAmountType instance(Integer value) {
        ShopWalletAmountType[] enums = values();
        for (ShopWalletAmountType statusEnum : enums) {
            if (statusEnum.value().equals(value)) {
                return statusEnum;
            }
        }
        return null;
    }
}
